<html>
    <head>
        <title>使用方法</title>
    </head>
    <body>
        <script>
             /*
                        四、使用方法  Usage

                                使用起来很简单。只需要在客户端应用程序代码中注入服务接口即可：

                                            // 客户端应用程序代码
                                            public class MyService : ITransientDependency
                                            {
                                                private readonly IBookAppService _bookService;  
                                                // 因为客户端程序应用了 HttpAPI.Client项目，等于间接引用了 Application.Contracts项目。
                                                // 而HttpApi.Client项目中ABP框架自动实现了Application.Contracts项目中定义的接口。
                                                // 所以，服务接口中的每个方法都自动被实现了，会使用HTTPClient调用相应的远程服务。
                                                public MyService(IBookAppService bookService)
                                                {
                                                    _bookService = bookService;
                                                }

                                                public async Task DoIt()
                                                {
                                                    var books = await _bookService.GetListAsync();
                                                    foreach (var book in books)
                                                    {
                                                        Console.WriteLine($"[BOOK {book.Id}] Name={book.Name}");
                                                    }
                                                }
                                            } 

                                此示例注入上面定义的IBookAppService服务接口。每当客户端调用服务方法时，动态客户端代理实现都会进行HTTP调用。



                                ★、IHttpClientProxy接口

                                            虽然您可以像上面那样注入IBookAppService来使用客户端代理，但您可以注入IHttpClientProxy<IBookAppService>以获得更明确的用法。

                                            在这种情况下，您将使用IHttpClientProxy<T>接口的Service属性。    

                    */
        </script>
    </body>
</html>